import $ from 'jquery';
import { GET_LIST } from '../../../config/config'
import CreateItem from './CreateItem'

export default class List {
  constructor(app) {
    this.app = app
    this.$el = $('<div>')
  }

  init() {
    this.loadData().then(data => {
      this.initItemList(data)
    }).then(() => {
      // 渲染
      this.render()
    })
  }
  loadData() {
    return fetch(GET_LIST).then(result => {
      return result.json()
    })
  }
  initItemList(data) {
    data.forEach(itemData => {
      // 创建一个 Item 然后 init
      let item = CreateItem(this, itemData)
      item.init()
    })
  }
  render() {
    this.app.$el.append(this.$el)
  }
}